#ifndef ACAPELLA_QUEUE_QUEUE_BASE
#define ACAPELLA_QUEUE_QUEUE_BASE

namespace acapella
{
namespace queue
{

template<typename ElementType>
class Queue
{
public:
	Queue(){};
	virtual ~Queue(){};

	virtual _uint32_ Size() = 0;

	virtual void Send(const ElementType& value) = 0;

	virtual int Recv(ElementType& value) = 0;
};

}
}

#endif
